package com.kamistoat.meimeistore.product.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.kamistoat.common.utils.PageUtils;
import com.kamistoat.meimeistore.product.entity.ProductAttrValueEntity;
import com.kamistoat.meimeistore.product.vo.spuSave.BaseAttrs;

import java.util.List;
import java.util.Map;

/**
 * spu属性值
 *
 * @author kamistoat
 * @email linjianshanke@163.com
 * @date 2021-09-12 14:28:44
 */
public interface ProductAttrValueService extends IService<ProductAttrValueEntity> {

    PageUtils queryPage(Map<String, Object> params);

    /**
     * 并非服务层接口方法，只是在saveSPUInfo()中调用
     *
     * @param id            SPU_Id
     * @param baseAttrsList 基础属性列表
     */
    void saveSpuAttr(Long id, List<BaseAttrs> baseAttrsList);

    /**
     * 自己的方法，返回对应spuId下的所有基础属性的值
     *
     * @param spuId spuId
     * @return List
     */
    List<ProductAttrValueEntity> listForSpu(Long spuId);

    /**
     * 自己的方法，修改SpuId的基础属性值
     * @param spuId spuId
     * @param productAttrValueEntityList 基础属性列表
     */
    void updateBySpuId(Long spuId, List<ProductAttrValueEntity> productAttrValueEntityList);
}

